/*
https://leetcode.cn/problems/lexicographically-smallest-string-after-a-swap/description/
3216. 交换后字典序最小的字符串
*/

class Solution:
    def getSmallestString(self, s: str) -> str:
        s = list(s)  # 字符串被转换成了列表。
        for i in range(0, len(s) - 1):
            if s[i] >s[i + 1] and ord(s[i]) % 2 == ord(s[i + 1]) % 2:
        # ord('a')返回97,函数接受一个字符（长度为 1 的字符串）作为参数，并返回对应的整数
                s[i], s[i + 1] = s[i + 1], s[i]
                break
        return ''.join(s)
